#ifndef __SPL_LIST_H__
#define __SPL_LIST_H__


// 导入头文件
#include "Elemnt_data_list.h" 


// 定义数据关系

// 单链表的创建
Link_list* init_link_list();

// 单链表的插入
void insert_node_end(Link_list* list, Elenemt_data data); //认真排队
void insert_node_begin(Link_list* list, Elenemt_data data); //吊炸天插队
void insert_node(Link_list* list, Elenemt_data data, int index);//任意插队

// 单链表的删除
void delete_node_end(Link_list* list); //淘汰制
void delete_node_begin(Link_list ** list); //飞升
void delete_node(Link_list* list, int id); //随机整死一位倒霉蛋

// 单链表的查找
Node* find_node_id(Link_list* list, int id);
Node* find_node_name(Link_list* list, char* name);

// 单链表的遍历
void print_link_list(Link_list* list);

// 单链表的判空
int IsEmpty_Sql_List(Link_list* list);

// 单链表的清空
void clear_link_list(Link_list* list);

// 单链表的合并
Link_list* merge_link_lists(Link_list* list1, Link_list* list2);

// 单链表的销毁
void free_link_list(Link_list* list);

#endif